package com.kolalo.constant.regular;

public class RegularExpression {
	/** 类型 */
	public static final String IS_TYPE = "(?:(?:public|private|protected)\\s+)?(?:(?:strictfp|final|abstract)\\s+){0,2}\\s*(?:class|enum|interface)\\s+\\w+\\s*(\\s*extends\\s+[\\w<>\\.]+\\s*)?\\s*(\\s*implements\\s+(?:[\\w\\[\\]<>\\.\\s]+,?\\s*))?\\s*\\{(?:.|\\s)*?\\}";
	/** 创建变量 */
	public static final String IS_CREATEVARIABLE = "(?:(?:public|private|protected|static|final)\\s+){0,3}[\\w\\s\\[\\]<>,]+\\s+\\w+\\s*(?:=\\s*[\\w\\s\\[\\]\\(\\)\\{\\}\\.'\",|<>=,/*+%!&^~?-]+\\s*)?;";
	/** 创建函数 */
	public static final String IS_FUNCTION = "(?:(?:public|private|protected|static|final|abstract|strictfp|native|synchronized|default)\\s+)+[\\w\\[\\]<>\\.\\s,]+\\s+\\w+\\s*\\(\\s*(?:[\\w\\[\\]<>\\.\\s]+\\s+\\w+,?)*\\)(?:throws(?:\\s*\\w+,?)+)?";
	/** 函数表达式 通过函数调用的方式最后获得一个数据或无返回值 */
	public static final String IS_VARIABLE_EXPRESSION = "\\s*new\\s+(\\w+\\(([\\w\\s]+)?\\))\\s*(\\.(\\w+\\(([\\w\\s]+)?\\)))*;?";
}
